package grafica;

import elementi.Elemento;
import elementi.Gadget;
import elementi.Muro;
import elementi.giocatori.Giocatore;


/**
 * Che bello questo Proxy-Singleton. Bravi.
 * Alessandro
 */

public class GraficaProxy implements Grafica {
	
	private Grafica grafica;
	private static GraficaProxy singleton = new GraficaProxy();
	
	private GraficaProxy () {
	}
	
	public static GraficaProxy getSingleton() {
		return singleton;
	}
	public void setGrafica(Grafica grafica) {
		this.grafica = grafica;
	}
	
	@Override
	public void disegnaGiocatore(Giocatore giocatore) {
		getGrafica().disegnaGiocatore(giocatore);
	}
	
	@Override
	public void update() {
		getGrafica().update();	
	}
	
	public Grafica getGrafica() {
		return grafica;
	}

	@Override
	public void disegnaMuro(Muro muro) {
		getGrafica().disegnaMuro(muro);		
	}
	
	public void disegnaGadget (Gadget gadget) {
		getGrafica().disegnaGadget(gadget);	
	}
	
	public void disegnaElementoCircolare (Elemento elemento) {
		getGrafica().disegnaElementoCircolare(elemento);	
	}
}